{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "49\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEWCAYAAAB8LwAVAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzs3Xd4lFXawOHfkx5CEkihJAESOoROpIsINizg2kEsqGtZ6+rqWnZdddVFXRvrun4oRVcFsWMDdaULIiC9d0JLCCWUJKSc74/zhkySSTIpk4Tkua9rrpk5bzvvBOaZ08UYg1JKKVWUT01nQCmlVO2kAUIppZRbGiCUUkq5pQFCKaWUWxoglFJKuaUBQimllFsaIJRSpRKRpiIyT0SOicjLNZ0fABGZIyK31XQ+6joNEHWIiOwQkQwROS4ih0XkGxFp4bL9XBGZLSJHRWRHkWPjRcSIiF+R9Cki8qzzWkTkCRHZJSLpIjJNRMI8yNccJz+BVXSr7q5hRKStt87vTS6f/TdF0t8XkadqKFuubgcOAmHGmIeKbnT+jZxy/t3lP1ZWfzZVVdMAUfdcZoxpCDQHDgD/ctl2ApgEPFzBc98I3AAMBGKA4CLnL0ZE4oGzAQOMqOB164t+IjKwpjPhRitgnSl9VO2LxpiGLo/u1ZU55T0aIOooY0wm8AnQ2SVtiTHmv8C2Cp72MmCiMWa3MeY48AJwrYg0KOWYG4HFwBTgpvxEEeknIvtFxNcl7Xcissp5HSwi7zolj/Ui8oiIJJc3wyLiIyJ/EZGdIpIiIu+JSLizLcj5lZ4mIkdE5FcRaepsu1lEtjnVKttF5Ho3545xSmwRLmk9ReSgiPiLSFsRmeuU2A6KyEdlZPdF4NkS7uNmEVlQJO10qcn5Ff+miHzn/IJfKCLNROQ15zPcICI9S/mcBjj3f9R5HpB/Xuzf7RHnvOeVcQ9Fz5tfOrpdRPaKyD4Rechle6CTx73O4zXXkqaIjBSRFU6JdauIXORy+lbOfR4Tke9FJMo5psS/qyofDRB1lPOlfS32y7nKTus8XN8HAu1KOeZG4APncWH+f1RjzGJsiWaoy76jgQ+d138D4oHWwPnAmArm+Wbnca5zrobAG862m4BwoAUQCdwJZIhICDAeGG6MCQUGACuKntgYsxdYBFxZ5B4+McZkA38HvgcaA3GUUdoC/g20L++XsItrgL8AUUCWk7flzvtPgFfcHeQEuG+w9xzp7PeNiEQaY27G/u3ySwg/VjBv52L/nVwAPOpyj08A/YAeQHegj3MPiEgf4D1sibcRMBjY4XLO0cBYoAkQAPzJSXf7d61gvus1DRB1zxcicgRIx36xvlSF5/4OuM35VRgO/NlJd1uCEJFB2OqJ6caYZcBW7H/qfFOBUc6+ocDFThrYL7vnjTGHjTHJ2C+virgeeMUYs80p9TwGXCe2rSUb+wXS1hiTa4xZZoxJd47LA7qISLAxZp8xZm0J5//Q5R4EuI6CIJft3H+MMSbTGLPA/SlOywSeo4RShAc+d+4hE/gcyDTGvGeMyQU+AkoqQVwCbDbG/NcYk2OMmQpswJYYPfUn59d6/uPdItufNsacMMasBibjfGbYv88zxpgUY0wq8DS2GhPgVmCSMeYHY0yeMWaPMWaDyzknG2M2GWMygOnYIAOl/11VOWiAqHsuN8Y0wv6yvweYKyLNPDgux3n2L5Luj/0PB7b9YiowB1gLzHbSS6r6uQn43hhz0Hn/IS7VTM77K5wqhSuA5caYnc62GGC3y76ur8sjBtjp8n4n4Ac0Bf4LzAKmOdUbL4qIvzHmBLb0dSewT2xjf8cSzv8J0F9EYrC/cA0w39n2CLaUtURE1orILR7k922gqYiU58s53wGX1xlu3jcs4biinxHO+9hyXPufxphGLo+bimx3/fvtdK7p7tqu21pgf1SUZL/L65MU3J/bv2s57kU5NEDUUc4vp8+AXGCQB4fswwaC+CLpCTj/gZ1fcX8zxsQbY+KwQWKP8yhERIKxpYBznLaG/cAfge4i0t053zrn3MMpXL2Un584l/ctqJi92F/x+Vpig+EBY0y2MeZpY0xnbDXSpdgqMYwxs4wx52Mb+zdgv7iLMcYcwVYjXePcw9T8xlxjzH5jzO+NMTHAHcCbUkZPK6dq6mls9ZRrdd4JXEpqHgZ9TxX9jMB+TsX+rpXg+vdr6VzT3bVdt+0G2pT3QqX9XVX5aICoo8Qaia3/Xu+k+YhIELZUIE5jXgDYgAJ8CjwnIpFOI+sobCP3d87xESLSxjl3Z2xd9TPGmDw3WbgcG5w6Y4v+PYBO2F/Xrv9ZPwTuw/76/tglfTrwmIg0FpFYbGmoLAHOPeU/fLElnj+KSIKINASeBz4yxuSI7fbb1dkvHRsgc8X2+x/htEVkAcedeynJh849XYlLkBORq0UkP8gdxpYuSjtPvv9iS4CuDbIrgUQR6eH8DZ/y4Dye+hbb9jFaRPxE5Frs3+3rKrzGX0WkgYgkYtsN8hvspwJ/EZFop5H5SeB9Z9tEYKyIDHP+7caWUpI7raS/axXeS/1hjNFHHXlgG/AysF9ox4A1wPUu24dgv6RcH3NctjcG3sH+cjwMLAQGumxvD2zEFud3Ag+WkpeZwMtu0q/BVg34Oe9bYuv7vymyXwj2i/IINsD9BdhayvWK3pcBbsP+CHoS+2s0Ffvl09g5ZpRzPyew1THjsdVPzYG5wFHn+nOAzqVcO9j5vNcWSX/R+SyPY6tKbi/h+Hgnv35FPicDPOWS9gR2PMJubKO9wdazg+0l9qzLvrcV+du2BXJKuYdBwDLnnpcBg1y2FTq3m2OnAKec+8x/HCxyb7djSwb7gUdcjg1yPvd9zmM8EOSy/XfAKufz3QJc6KTPAW5z2e9mYEFpf9ea/v95Jj7E+UCVqtVE5C7gOmPMOTWdF+U5seNgtgP+xpic0vdWtY1WMalaSUSai8hAp2qhA/AQtmeOUqqa+JW9i1I1IgD4P2wj+RFgGvBmjeZIqXpGq5iUUkq5pVVMSiml3Dqjq5iioqJMfHx8TWdDKaXOKMuWLTtojIkua78zOkDEx8ezdOnSms6GUkqdUUSk6Mh5t7SKSSmllFsaIJRSSrmlAUIppZRbZ3QbhFKqbsjOziY5OZnMzMyazkqdEhQURFxcHP7+FZvMVgOEUqrGJScnExoaSnx8PHZZDVVZxhjS0tJITk4mISGhQufQKialVI3LzMwkMjJSg0MVEhEiIyMrVSrTAKGUqhU0OFS9yn6m9TNAHFgH3/8Fso7XdE6UUqrWqp8B4sgu+PlfsH91TedEKVULDBkyhFmzZhVKe+211/jDH/5Q6nENG7pfxbWk9DON1wKEiEwSkRQRWeOS9pGIrHAeO0Rkhcu2x0Rki4hsFJELvZUvAGKctc33/ubVyyilzgyjRo1i2rRphdKmTZvGqFGjaihHtYM3SxBTKLxkIsaYa40xPYwxPbDLW34G4CxfeR2Q6BzzprNcoHeENoPQGA0QSikArrrqKr7++muysrIA2LFjB3v37mXQoEEcP36cYcOG0atXL7p27cqXX35ZoWvs3LmTYcOG0a1bN4YNG8auXbsA+Pjjj+nSpQvdu3dn8ODBAKxdu5Y+ffrQo0cPunXrxubNm6vmRsvJa91cjTHznNWkihHbcnINMNRJGglMM8ZkAdtFZAvQB1jkrfwR20sDhFK10NNfrWXd3vQqPWfnmDD+dlliidsjIyPp06cPM2fOZOTIkUybNo1rr70WESEoKIjPP/+csLAwDh48SL9+/RgxYkS5G4DvuecebrzxRm666SYmTZrEfffdxxdffMEzzzzDrFmziI2N5ciRIwC89dZb3H///Vx//fWcOnWK3NyaWVK7ptogzgYOGGPyw2Isdp3dfMlOWjEicruILBWRpampqRXPQUwPSNsMmVX7D1EpdWZyrWZyrV4yxvD444/TrVs3zjvvPPbs2cOBAwfKff5FixYxevRoAG644QYWLFgAwMCBA7n55pt5++23TweC/v378/zzz/PCCy+wc+dOgoODq+IWy62mBsqNAqa6vHcXit2uZGSMmQBMAEhKSqr4akcxPe3zvpWQcHaFT6OUqlql/dL3pssvv5wHH3yQ5cuXk5GRQa9evQD44IMPSE1NZdmyZfj7+xMfH18lI77zSyBvvfUWv/zyC9988w09evRgxYoVjB49mr59+/LNN99w4YUX8s477zB06NAyzlj1qr0EISJ+wBXARy7JyUALl/dxwF6vZqS5EyC0mkkphe15NGTIEG655ZZCjdNHjx6lSZMm+Pv7M3v2bHbu9Gim7GIGDBhwuoTywQcfMGjQIAC2bt1K3759eeaZZ4iKimL37t1s27aN1q1bc9999zFixAhWrVpV+RusgJooQZwHbDDGJLukzQA+FJFXgBigHbDEq7kIiYRGLTVAKKVOGzVqFFdccUWhHk3XX389l112GUlJSfTo0YOOHTuWeZ6TJ08SFxd3+v2DDz7I+PHjueWWW3jppZeIjo5m8uTJADz88MNs3rwZYwzDhg2je/fujBs3jvfffx9/f3+aNWvGk08+WfU36wGvrUktIlOBIUAUcAD4mzFmoohMARYbY94qsv8TwC1ADvCAMea7sq6RlJRkKrVg0PQbYd8quH9F2fsqpbxm/fr1dOrUqaazUSe5+2xFZJkxJqmsY73Zi8ltB2JjzM0lpD8HPOet/LgV0xPWfQknD0GDiGq9tFJK1Xb1cyR1vtMN1VqCUEqpoup3gGje3T5rO4RSShVTvwNEcGOIaK0BQiml3KjfAQJsNdNerWJSSqmiNEDE9ISju+F4JUZlK6VUHaQBQhuqlar30tLS6NGjBz169KBZs2bExsaefn/q1CmPzjF27Fg2btzo8TXfeecdHnjggYpmuVromtTNugFi2yHanV/TuVFK1YDIyEhWrLA/Ep966ikaNmzIn/70p0L7GGMwxuDj4/53df7At7pESxBBYRDVThuqlVLFbNmyhS5dunDnnXfSq1cv9u3bx+23305SUhKJiYk888wzp/cdNGgQK1asICcnh0aNGvHoo4/SvXt3+vfvT0pKisfXfP/99+natStdunTh8ccfByAnJ4cbbrjhdPr48eMBePXVV+ncuTPdu3dnzJgxVXvzaAnCiukJ2+fVdC6UUgDfPVr1qz026wrDx1Xo0HXr1jF58mTeestO/jBu3DgiIiLIycnh3HPP5aqrrqJz586Fjjl69CjnnHMO48aN48EHH2TSpEk8+uijZV4rOTmZv/zlLyxdupTw8HDOO+88vv76a6Kjozl48CCrV9vPJX9a8BdffJGdO3cSEBBwOq0qaQkCbIA4tg/S99V0TpRStUybNm0466yzTr+fOnUqvXr1olevXqxfv55169YVOyY4OJjhw4cD0Lt3b3bs2OHRtX755ReGDh1KVFQU/v7+jB49mnnz5tG2bVs2btzI/fffz6xZswgPDwcgMTGRMWPG8MEHH+Dv71/5my1CSxBQuKE6rHnN5kWp+q6Cv/S9JSQk5PTrzZs38/rrr7NkyRIaNWrEmDFj3E79HRAQcPq1r68vOTk5Hl2rpLnxIiMjWbVqFd999x3jx4/n008/ZcKECcyaNYu5c+fy5Zdf8uyzz7JmzRp8fatuMU4tQYAtfoqPtkMopUqVnp5OaGgoYWFh7Nu3j1mzZlXp+fv168fs2bNJS0sjJyeHadOmcc4555Camooxhquvvpqnn36a5cuXk5ubS3JyMkOHDuWll14iNTWVkydPVml+6mUJYvbGFJ77Zj0f3NaXpmFBEBAC0R01QCilStWrVy86d+5Mly5daN26NQMHDqzU+SZOnMgnn3xy+v3SpUt55plnGDJkCMYYLrvsMi655BKWL1/OrbfeijEGEeGFF14gJyeH0aNHc+zYMfLy8vjzn/9MaGhoZW+xEK9N910dKjrd96KtaYx6ezHv3dKHwe2jbeIXf4DN38OfNkM515pVSlWOTvftPZWZ7rteVjF1aGaj7Mb9xwoSY3rCiVRI31NDuVJKqdqlXgaIiJAAokMD2XigSIAA2LO8ZjKllFK1TL0MEAAdm4WyyTVANE0EHz9th1CqhpzJ1d21VWU/U68FCBGZJCIpIrKmSPq9IrJRRNaKyIsu6Y+JyBZn24Xeyle+9k1tgMjNcz5A/2Bo0kkDhFI1ICgoiLS0NA0SVcgYQ1paGkFBQRU+hzd7MU0B3gDey08QkXOBkUA3Y0yWiDRx0jsD1wGJQAzwo4i0N8bkeitzHZqFkpmdx+5DJ4mPcvo5x/SEdTPAGG2oVqoaxcXFkZycTGqqzqpclYKCgoiLi6vw8d5ck3qeiMQXSb4LGGeMyXL2yZ+gZCQwzUnfLiJbgD7AIm/lr0NT21C9Yf8xlwDRC5a/B4d3QESCty6tlCrC39+fhAT9P1fbVHcbRHvgbBH5RUTmikj++PVYYLfLfslOWjEicruILBWRpZX5tdGuaUNEKNwOkd9QrdVMSilV7QHCD2gM9AMeBqaLiADu6nPcVkYaYyYYY5KMMUnR0dEVzkiDAD9aRjQo3NW1SWfwDYTk8o+tUEqpuqa6A0Qy8JmxlgB5QJST3sJlvzhgr7cz075paOGurn4B0KIP7NCZXZVSqroDxBfAUAARaQ8EAAeBGcB1IhIoIglAO2CJtzPTsVko2w+eICvHpS08YTDsXwMnD3n78kopVat5s5vrVGwjcwcRSRaRW4FJQGun6+s04CanNLEWmA6sA2YCd3uzB1O+9k1Dyc0zbE05UZAYfzZgYOdCb19eKaVqNW/2YhpVwia3yx4ZY54DnvNWftzpmD/lxoF0OseE2cTY3uDfALbPh06XVWd2lFKqVqm3I6kB4qNC8PcVNu4/XpDoFwAt+uoKc0qpeq9eBwh/Xx/aRDdk4/70whsSzobU9XBcB+0opeqveh0gwI6o3nTgeOHEhHPs84751Z8hpZSqJep9gGjfNJQ9RzI4lpldkNi8BwSEaoBQStVr9T5A5DdUFxpR7esHrfprO4RSql6r9wGifdP8xYOKVDPFnw1pWyB9Xw3kSimlal69DxBxjYMJCfB101A92D5rNZNSqp6q9wFCRGjfrMiUGwDNukJQOGyfWzMZU0qpGlbvAwTYdoiN+48VXqzExxdaDbID5pRSqh7SAIFthzh8MpvU41mFNyScDUd2wpFdNZMxpZSqQRogKFg8qNDU31DQDqGlCKVUPaQBAjtYDtwEiOhO0CBSu7sqpeolDRBAZMNAohoGFA8QPj4QP8j2ZNLF1JVS9YwGCIedcuNY8Q3xZ0P6Hji0rfozpZRSNUgDhKN9UzsnU15ekZKCzsuklKqnNEA4OjYLJSM7l92HTxbeENUOGjbVdgilVL3jzRXlJolIirN6XH7aUyKyR0RWOI+LXbY9JiJbRGSjiFzorXyVpH1JPZlEbDXTdm2HUErVL94sQUwBLnKT/qoxpofz+BZARDoD1wGJzjFvioivF/NWTLuSAgTY8RAnUuDgpurMklJK1SivBQhjzDzgkIe7jwSmGWOyjDHbgS1AH2/lzZ2GgX60iAguPuUGuIyH0GompVT9URNtEPeIyCqnCqqxkxYL7HbZJ9lJK0ZEbheRpSKyNDW1ald869A01H0JonEChMVpgFBK1SvVHSD+A7QBegD7gJeddHGzr9sKf2PMBGNMkjEmKTo6ukoz16FZKNsPniArJ7fwBhG7PkTy0iq9nlJK1WbVGiCMMQeMMbnGmDzgbQqqkZKBFi67xgF7qzNvYBuqc/IM21JPFN8Y3RGO7YWs48W3KaVUHVStAUJEmru8/R2Q38NpBnCdiASKSALQDlhSnXkD6NgsDMD9gLmodvY5bUs15kgppWqON7u5TgUWAR1EJFlEbgVeFJHVIrIKOBf4I4AxZi0wHVgHzATuNsbklnBqr0mICsHfV1i/z12AaG+fD26u3kwppVQN8fPWiY0xo9wkTyxl/+eA57yVH08E+PnQrkkoa/ceLb4xojWID6RpgFBK1Q86krqIxJgw1u1NL7x4EIBfIDRqpWMhlFL1hgaIIhJjwkg7cYoD6VnFN0a11yompVS9oQGiiMTYcAD31UxR7WwjdV5eNedKKaWqnwaIIjo1D0ME1uxJL74xqh3kZMLR3cW3KaVUHaMBooiGgX4kRIa4L0FE5nd11WompVTdpwHCjc4xYazd664EoV1dlVL1hwYINxJjwtlzJIMjJ08V3hASBUGNtCeTUqpe0ADhRpdYO6K6WClCxLZDaAlCKVUPaIBwIzGmtJ5M2tVVKVU/aIBwIyIkgObhQe7bISLbwvH9kOlmm1JK1SEaIEqQWFZDtfZkUkrVcRogSpAYE8621OOcPJVTeIP2ZFJK1RMaIEqQGBNGnqH4zK6N40F8NUAopeo8DRAlyJ9yY13Rhmq/AIhI0K6uSqk6TwNECWLCg2jUwL+Ehup2unCQUqrOK3eAEJEQEfH1RmZqExGhS0x4CQ3V+ZP2VfuaRkopVW3KDBAi4iMio0XkGxFJATYA+0RkrYi8JCLtvJ/NmpEYE8bG/cfIzi0ye2tUO8g9BUd21kzGlFKqGnhSgpgNtAEeA5oZY1oYY5oAZwOLgXEiMqboQSIySURSRGSNm21/EhEjIlHOexGR8SKyRURWiUivSt1VFekcE8ap3Dw2HzheeMPpnkxazaSUqrs8CRDnGWP+boxZZYw5/VPaGHPIGPOpMeZK4CM3x00BLiqaKCItgPOBXS7Jw4F2zuN24D+e34L3lDii+nSA0IZqpVTd5UmAODv/hYgkuG4QkSsAjDHZRQ8yxswDDrk536vAI4Drmp4jgfeMtRhoJCLNPcibVyVEhRDs71u8HaJBBARH6GA5pVSd5kmA+KfL60+LbPtLeS4mIiOAPcaYlUU2xQKuq/AkO2nuznG7iCwVkaWpqanluXy5+foInZ01qovROZmUUnWcJwFCSnjt7n3JJxFpADwBPFnGNfIZN2kYYyYYY5KMMUnR0dGeXr7C7JQbR8nLK5KdqLZaxaSUqtM8CRCmhNfu3pemDZAArBSRHUAcsFxEmmFLDC1c9o0D9pbj3F6TGBPGiVO57Dx0svCGqPZwIhUyDtdMxpRSysv8PNintYjMwP7Kz3+N8z6h5MMKM8asBprkv3eCRJIx5qBzzntEZBrQFzhqjNnn6bm9ybWhOiEqpGCDa0+mFmfVQM6UUsq7PAkQI11e/7PItqLvTxORqcAQIEpEkoG/GWMmlrD7t8DFwBbgJDDWg3xVi3ZNG+LvK6zdm86l3WIKNriuT60BQilVB5UZIIwxc13fi4g/0AXb2JxSynGjyjhvvMtrA9xdVl5qQqCfL+2ahLJmT5Guro1bgY+/tkMopeosT0ZSvyUiic7rcGAl8B7wm4iUGgTqikSnJ5ONYw5ff2fSPu3JpJSqmzwaB2GMWeu8HgtsMsZ0BXpjxzPUeYkxYaSdOMWB9KzCG7Srq1KqDvMkQJxyeX0+8AWAMWa/V3JUC3WJLWlEdTs4tA1yc9wcpZRSZzZPAsQREblURHoCA4GZACLiBwR7M3O1RafmYYhQfER1ZDvIy9ZJ+5RSdZInvZjuAMYDzYAHXEoOw4BvvJWx2iQk0I+EyJDiDdWuczJFtqn+jCmllBd50otpE24m3TPGzAJmeSNTtVG3uHDmbkolMzuXIH9nOYyotvb54CboMLzmMqeUUl5QZoAQkfGlbTfG3Fd12am9rk5qwRcr9vLVyr1cneQM+g5uDCHR2lCtlKqTPKliuhNYA0zHTn/h8fxLdcmANpG0b9qQyQt3cFXvOEScjyGynQYIpVSd5EkjdXNgAnAhcAPgD8wwxrxrjHnXm5mrTUSEmwcksG5fOku2u8xiHtVOp/1WStVJZQYIY0yaMeYtY8y5wM1AI2CtiNzg7czVNr/rGUt4sD9Tft5RkBjVHk6mwYm0GsuXUkp5gyclCACcZUAfAMYA3wHLvJWp2io4wJfr+rRg1tr9JB92ZneNdVZH/fWdmsuYUkp5gSdTbTwtIsuAB4G52BlYbzXGrPN67mqhG/vHIyL8d5Ez9qHVAOh6Dcx9AZLrXcxUStVhnpQg/gqEA92Bf2DXcFglIqtFZJVXc1cLxTYK5sLEpkxdsouTp5wR1Be/BGEx8NltkHW8ZjOolFJVxJMAkYAdFHep87jMeeS/rnduHpBAemYOn/+2xyYEN4LfvQWHtsP3T9Rs5pRSqop4EiB2GWN2lvQAkNN9PuuHs+IbkxgTxpSFOwpmeI0fBAPvg2VTYON3NZo/pZSqCp4EiNkicq+ItHRNFJEAERkqIu8CN3kne7WTiDB2YAKbU46zcItL76Vzn4BmXeHLe+B4iUtlKKXUGcGTAHERkAtMFZG9IrJORLYDm4FRwKvGmClezGOtdGm35kSGBDB54faCRL9AuOIdOHXcBglTniW7lVKqdvFkHESmMeZNY8xAoBW2PaKnMaaVMeb3xpgV7o4TkUkikiIia1zS/u40cK8Qke9FJMZJFxEZLyJbnO29quj+vCbI35fr+7bkp40p7Dh4omBDk45w/jOweRYsnVRzGVRKqUoqzziINoCPMWYf0ENE7hORRqUcMoXik/y9ZIzpZozpAXwNPOmkDwfaOY/bgf94mq+aNKZfK3xFCg+cAzjr99BmGMx6QqfhUEqdsTwOEMCnQK6ItAUmYns3fVjSzsaYecChImmuCyqEAPl1MCOB94y1GGgkIs3Lkbca0SQsiEu6NeeTZckcy8wu2ODjA5e/CRgtRSilzljlCRB5xpgc4ArgNWPMH7HzNJWLiDwnIruB6ykoQcQCu112S3bS3B1/u4gsFZGlqamp5b18lRs7MIHjWTl8tnxP4Q2hzexEfmlbayZjSilVSeUJENkiMgq4EVs9BHbivnIxxjxhjGkBfADc4yS76ybrtoXXGDPBGJNkjEmKjo4u7+WrXI8WjegWF85/F+8s6PKaL7K1XZJUKaXOQOUJEGOB/sBzxpjtIpIAvF+Ja38IXOm8TgZauGyLw04tfka4oV8rtqQcZ9HWIhP2RbSGwzt0zWql1BnJ4wBhjFlnjLnPGDNVRBoDocaYceW5mIi0c3k7AtjgvJ4B3Oj0ZuoHHHUaw88Il3WPoVG1IqmFAAAgAElEQVQDf95bVGRt6ojWds3q9GTPTnTiIHx+F6z/CvLyqj6jSilVDuXpxTRHRMJEJAJYCUwWkVdK2X8qsAjoICLJInIrME5E1jhzOF0A3O/s/i2wDdgCvA38oWK3UzOC/H25NqkFP6w/wL6jGQUbIpx1qj1th9g0C1Z+CB+NgX/3geXvQU5W1WdYKaU8UJ4qpnCnF9IVwGRjTG/gvJJ2NsaMMsY0N8b4G2PijDETjTFXGmO6OF1dLzPG7HH2NcaYu40xbYwxXY0xSyt3W9VvTL9W5BnDh7/sKkiMaG2fPW2HOLgJfPzhyongHwwz7oXXu8PC1yEzvezjlVKqCpUnQPg5XU+voaCRWjlaRDTg3A5NmLpkN6dynOqh0Gbg38BO4ueJg5sgsi10vQrumAc3fG4XJPrhSXi1i616Kg+tplJKVUJ5AsQzwCxgqzHmVxFpjZ1uQzlu7N+Kg8ez+G6N03wiYksRhzysYkrdCNHtC45tMxRumgG/nw2NW8JX90PGEc/OtfUnGNdSu9kqpSqsPI3UHztVQ3c577cZY64s67j6ZHC7aOIjGxQsJgQQkeBZFVNOFhzebksMRcX2gpH/hpOHYI4H/QJOnYSvHoBTx2B/vVuyQylVRcrTSB0nIp878ysdEJFPRSTOm5k70/j4CGP6tWLpzsOs2+u0GUS0sV1d83JLP/jQNjB5ENXB/fbm3aH3zbBkAqRscL9PvnkvwhEnSB3dU/q+SilVgvJUMU3GdkeNwY5y/spJUy6u7t2CIH8f/rt4h02IaA25p+BoGV1dUzfa52g3JYh8Q/8KgQ3hu0dKnin2wFr4+V/QYwz4h0C6BgilVMWUJ0BEG2MmG2NynMcUoOaHMtcy4Q38Gdk9li9+28vRjGyIdLq6ltUOcXCTfY5sW/I+IZF2zYntc2GDm34CeXm2aikoHC74O4THlh2YlFKqBOUJEAdFZIyI+DqPMUBamUfVQzf0b0VGdi6fLEv2vKvrwU0Q3hICQkrfL+lWiO4Esx6H7IzC25ZNhuQlcOHz0CACwuM0QCilKqw8AeIWbBfX/cA+4Crs9BuqiC6x4fRq2Yj3F+8kL6QZ+AWX3dXVtQdTaXz9YPgLcGQX/PxGQfqx/fDj05AwGLpda9PCYrWKSSlVYeXpxbTLGDPCGBNtjGlijLkcO2hOuXFj/3i2HzzBvC0HbSmitO6meXl23YiSGqiLan0OdBoB818uKCHMfAxyMuGSV20XWbAliOMpkHOqcjejlKqXylOCcOfBKslFHTS8azNiGwXz0PSVHAtpUXoVU3oy5GRAVLuS9ynqgmcBYwfRbf4B1n4Gg/8EUS5tGGGxdp9jZ8y8h0qpWqSyAcLdNN0KCPTz5b+39sHPV/h0RyB5h7aX3NU11WmgjvawBAHQuBUMvB/WfAqf32FLHwPvL7xPuLOkhnZ1VUpVQGUDRAl9LRVA6+iGTLu9P/t8YvDJO8XmzRvd73jQSfe0iinfwAcgLA5OpsGlr4JfYOHtYc4wFW2oVkpVQJkBQkSOiUi6m8cx7JgIVYqEqBDGjhgGwD+nfcuaPUeL75S6EYIjbDfW8ghoAKM+hCvegfiBxbfnlyA8nW5cKaVclBkgjDGhxpgwN49QY4xfdWTyTNcsvjMAbX1TuP6dX4oHiYOby1e95Kp5d+h2tfttASEQ3FirmJRSFVLZKiblidDm4BfEHV2FhoF+jH57MauSXSbdO7jR/RxMVSEsTru6KqUqRANEdfDxgYjWhJ3cxbTb+xEW7M81/7fIrmN94qBtQ/BWgAiP1RKEUqpCvBYgRGSSM7HfGpe0l0Rkg4iscib+a+Sy7TER2SIiG0XkQm/lq8ZEtIZD22gR0YDP7hpAn4RI/vrFGp5/b4bdXtEqprKExcLR3d45t1KqTvNmCWIKcFGRtB+ALsaYbsAm4DEAEekMXAckOse8KSK+Xsxb9YtobUdT5+XRJCyId8eexTMjE8nctw6AOWmNyjhBBYXHQeYROHXCO+dXStVZXgsQxph5wKEiad8bY3Kct4uB/OnCRwLTjDFZxpjt2LWp+3grbzUiojXkZp1uDxARbuwfz0M9IYtAxn6xnwenryA9M7tqrxue39VVq5mUUuVTk20QtwDfOa9jAdd6kGQnrRgRuV1ElorI0tTUVC9nsQqdnrSv8JQbjU7sIKBpe+4d2p4vftvD8Nfm88EvO8k4Vcb6EZ4K066uSqmKqZEAISJPADnAB/lJbnZzOwjPGDPBGJNkjEmKjj6DZhs/Pe13kSk3Dm5Eojvw4AUd+OSuAUQ2DOCJz9cwYNz/ePn7jaQcy6zcdXU0tVKqgqo9QIjITcClwPXGnF71Jhlo4bJbHFC3JhAKjQG/oMIB4tRJOLL7dAN1r5aN+fLugUy/oz99EiJ4Y/YWBo2bzUPTVxasUFeR6yI6mlopVW7VOtBNRC4C/gycY4w56bJpBvChiLyCHZ3dDlhSnXnzOh8faJwAaS4BIm0zYApN0ici9EmIoE9CBDvTTjB54Q6mL93Np8uTuWtIG/58UcfyXdcvABo20SompVS5ebOb61RgEdBBRJJF5FbgDSAU+EFEVojIWwDGmLXAdGAdMBO42xhTRZXwtYjT1fW0g5vtcwlzMLWKDOGpEYksenQYV/eO4z9ztvLx0gp0WQ2Pq1wVkzF2KdOSljlVStVJXitBGGNGuUmeWMr+zwHPeSs/tUJEAmz9n13/wcfHzsEkPgXtEyUIb+DPP67oyr6jmTzx+RoSokJIio/w/LphsZC6oeL5XvEhfPkHuPlb93M+KaXqJB1JXZ0i29hFffLXZzi4ERrHF5+F1Q0/Xx/eGN2TmEZB3Pn+MpIPnyzzmNPySxBOCSArJxfjaWkg8yj8+JR9vX+159dUSp3xNEBUp/yurvmry5VnFTmgUYMA3rnpLLJy8vj9e8s4kZVT9kFgSxDZJyDzCDsOnmDQC7N5/tv1nh0790U4kQq+gXbdbKVUvaEBojpFuHR1zc2BtC2erUPtom2ThvxrVE827k/noekrycvzoCTgdHVN37+dsVN+JfVYFu8t2smhE2UsRZq6CX55C3rdAM27aYBQqp7RAFGdwmLtL/FD2+DITsg9VaFJ+oZ0aMLjF3di5tr9vPajB1/a4bYH8b+/nMueIxmMu6IrWTl5vL94Z8nHGAMzHwX/EBj6pM1nfqO6Uqpe0ABRnXx8bJvDoW0Fv8bLu4qc49ZBCVyTFMf4n7bw5YrSeyjlhdp1nU6k7uTlq7tzXZ+WDOkQzXuLdpCZXUJnsU0zbYP6kEehYbQNEMf32zYJpVS9oAGiukW2sQEi1VlmtJxVTPlEhL9f3oWz4htz/7QV3P3hcnaluW+4fmXRYbKNL79rA5d1t8Hi92e35uDxU8xY4WY8Yk4WzHzMBq8+v7dp+SUdLUUoVW9ogKhu+WMhUjdCw2YQFF7hUwX6+fLuLX24f1g7flqfwrBX5vD3r9dx5GRB28L0X3fzxpwdHA+IplejghldB7SJpFPzMN5ZsK14j6ZF/4bD22H4OPD1t2mnA4S2QyhVX2iAqG4RrW1X1+1zC42grqgGAX788fz2zHl4CFf0jGPSwu0MfnE278zfxk8bDvD456s5u10U4c3iEZfBciLCbYMS2HTgOHM3uUx6mL4X5v0TOl4KbYYWpDeOBx9/DRBK1SMaIKpbflfX9D1VukhQ07AgXriqG9/edzY9Wjbm2W/Wc8uUpbRt0pA3r++FT3hcsfmYLuseQ9OwQCYu2F6Q+MPfIC8HLni28AV8/Wz1WKoGCKXqCw0Q1S0/QECFG6hL06l5GO/d0of3bunDlb3imHTzWYQG+dvBcul77ShuR4CfDzcNiGf+5oOs35cOuxbD6ukw4F476ruoqHZaglCqHtEAUd3C48A3wL6ugiqmkgxuH83L13QnplFwwXXzsu2gNxej+7Qk2N+Xd+Zvh8X/gZBoOPtB9yeNam/bJnKreFEjpVStpAGiuvn42vp88N461O6UsHBQowYBXJMUx7crd5K39SfoMBwCQtyfI6q9rX46tN39dk8c3gGTL4G9v1X8HEqpaqEBoiZEtIGAUAhtXn3XPL1wUPFpv28ZlEA3swmfrHRoe37J5zjdk2ljxfMx90XYuQA+uwOyK7kYklLKqzRA1IT+d8OFz4G4W0jPS8JKXpu6VWQIY5tsJhtfTrYYVPI58qvEKtoOcWg7rJwGLfvbIDPnHxU7j1KqWmiAqAkJZ0Pvm6r3mg0iwC/Y9p5yY7D8xq+5Hfh0TSkr1wWG2hXqKjpYbv7L4OMHV0+BnjfAz+MheWnFzqWU8joNEPWFiK1mcrf06NE9NDi8kY1h/Xn9f5uZsXJvydOBR7cvGAVeHod3wsqp0PtmCG1mS1ChzeGLu7SqSalaSgNEfRIW674EseUHAAYPH0V0aBD3Tf2Ny/+9kF+2pRXfN3/SvvKuLrfgVbs40sD77fugcBgx3lZXzXm+nDeilKoO3lxydJKIpIjIGpe0q0VkrYjkiUhSkf0fE5EtIrJRRC70Vr7qNTeD5QDY/AOEt6BNYhJf3zuIf17dnZRjWVw7YTG3vfsrW1KOFewb1R5OHYNj+z2/7tFk+O19W62U31gO0PY86HUj/Pwv2P1rxe9LKeUV3ixBTAEuKpK2BrgCmOeaKCKdgeuAROeYN0XE14t5q5/CYu0Xu+s4hpxTsG0OtDsfRPD1Ea7qHcfsPw3h4Qs7sHjbIS58bT6Pf77azvFUkYbqBa/Z50F/LL7tgudsu8aXf9CqJqVqGa8FCGPMPOBQkbT1xhh3FdgjgWnGmCxjzHZgC9DHW3mrt8JjAQPH9hWk7VoEp45DuwsK7Rrk78vd57Zl7sNDuKFfK6b/upsLXp3HgqPOWtieBoj0vbD8XegxGhq1KL49KKygqml23V6SXKkzTW1pg4gFdru8T3bSihGR20VkqYgsTU1NdbeLKkm4m66um7+3I7sTBrs9JLJhIE+NSOSLuwcSERLAmI92kenTgFP7N3h2zYXjIS+35NHZAG2H2cbrRW/A7iWenVcp5XW1JUC4GxDgthXUGDPBGJNkjEmKjo72crbqmPyxEK4N1Zt/gFYDSx497egSG86X9wzk7nPbsjGnGSt+W8K8TWUE6GP7Ydlk6D6qYPR4Sc7/O4Q0sTPJKqVqhdoSIJIB1/qHOMDNSjaqUk6PpnYKa4d32gFrRaqXShLo58vDF3akRfuexLOHGyct4fHPV5e8tvXP/7LLqpZWesgXFAaJl9tp0E+5X/hIKVW9akuAmAFcJyKBIpIAtAO0rqGqBYZCYHhBFZPTvdXTAJEvolUiTUwadw9owtQlu+j19x8475W5PPbZaj5bnszuQycxx1Pg14nQ9Ro7TbgnOgy3a2Vsm1Ou/CilvMPPWycWkanAECBKRJKBv2Ebrf8FRAPfiMgKY8yFxpi1IjIdWAfkAHcbY0pYLFlVSrjLWIjNP0DjBM+/wPM5czI93NuXS5LOZvbGFJbuOMTXq/YydckuAJ5q8Ak35mXy1OGLOPThcgJ8ffD39cHfTwgL8mfswASiQwMLn7flAAgMg43fQseLK3unSqlK8lqAMMaMKmHT5yXs/xyg3Vi8LX8sRHYmbJtrxyGUd04ol/WpO3fvReeYMADy8gybUo6xbOt+Rv70I7/492PJsUhOHUknOzePUzl5ZOcajmZk89WqvUwZ24c20Q0LzusXYBusN82y61b41JYCrlL1k9cChKqlwmJhzzI7o2pOhh3/UF4Rre2cSkW6uvr4CB2bhdFx/9eQm07/6x9jZuvivaNW7D7CrVN+5cr//MzEm5Lo3SqiYGOHi2Ht53Y68Lje5c+bUqrK6E+0+iY8Fk6mwboZ4BcE8aXM3loSX39bNeVu2m9j4Jf/s6vlldB1tkeLRnz2hwE0CvZn9Nu/MHONy7iMtueB+NpqJqVUjdIAUd/kd3Vd86n9AvcPrth58udkKmrPMti3Avr8vtSqq1aRIXx61wA6x4Rx1wfLmbzQWYSoQYSdDnzTzIrlSylVZTRA1Df5XV3djJ4ul6h2kLYVcnMKpy+ZYBdD6n5dmaeIbBjIh7f147xOTXn6q3U8+/U68vIMdLgIDqyBI7sqnj+lVKVpgKhvwopMlldR0R3sGtdHdhakHU+17Qc9RtkutR4IDvDlrTG9ubF/K95ZsJ2LXp/H2wfsUqx5G76reP6UUpWmAaK+yQ8Qke0gIqHi58nvyeS6NsTyd+3AuLN+X65T+foIT49I5MWrutG4QQDjfs1ha15zFs/8gAc/WsFXK/eSnpld9omUUlVKezHVN/5B0KwrdBpRufMUmtX1YlvVtHQStB5iFxUqJxHhmqQWXJPUgqMns0n9bDh9trzHIxt28NlvewgJ8OWB89pz88B4/H299LsmfZ9dzKg6l4JVqhbTEkR9dMd8GPxw5c4RFA4NmxU0VG/81g7AK2fpwZ3wBv60Pftq/Mhh7pXwyZ396ds6kue+Xc8l4+ez2N1CRpW1bxW82hnWz6j6cyt1htIAUR+JVM2v5Kh2BWMhlkyA8BbQvugSIBUU1weCG+O7eSZJ8RFMvCmJt29M4kRWLtdNWMwD034j5VgVrh+x6iMwebDyo6o7p6qfyrvaYi2mAUJVXFR7OxYiZT3smA9Jt4BvFdVa+vrZXlabZkFeLiLC+Z2b8uOD53Dv0LZ8u3o/w/45l0kLtpOTm1e5a+Xl2m6/YOenyjxa+fyr+mnnz/Ba1zozbb0GCFVxUe3tl+ns58E30E7bUZU6DIeMQ4X+swUH+PLQBR2Y9cfB9GzVmGe+XsdVby1iS8rxil9n50K7iFK/u20j+8Y63HsqVxv7vWrJBDtb8kdjbJvWGU4DhKq4/Mbo9TOgy5UQElW1528zDHz8YVPxL+yEqBDeHXsW40f1ZEfaCS4eP5+3520jN88p3h/aBicPFTvOrdUfQ0BDGPoXO5BwzWdVeBMeOLILVk6D2f+ApZPtJIoH1lV9SSZ9H7wQX1BaUlUr86j9cdH2PMg6boNETlZN56pStBeTqrgol95KfSrfOF1MUJidCmTjd3D+M8U2iwgjusfQr3UET3y+hue+Xc/sNTt4s/l3NFr1jl0I6eavS79GThas+xI6XQYBDeyaFL/8H2QchuDGVX9PxtgBhjsX2OqInT8XrM/hTkAoNGoJl78JMT0qd+11X9oBksvetQFdVa31X9np6s951JZIp98A3zwII944Y3vGaYBQFRcWa395R3eA2F7euUaH4fDdI/ZLtYRpyZuEBjHhht78/P104hfdT6OUVFLDEoneMR92LoJW/Us+/5Yf7S+/rlfZ94lX2KVPN3wDPcdU/f1Mv8F+kQCERNsgNuA+aDXABtwTKXa9jvRk53kPrPjQ5unKdyp37bXORMrb59nV/kKbVe58qrBVH9mJLOOSbEAY/DDMewma9/DOD6hqoAFCVZwIXDGh7OVEK6P9RTZAbJoJ/e92v8+JNGTW4wxcNY2cxm0ZF/g4U3Y0YnHwA2R98yyRd3yFX0ljJ1Z/DA2iIGGIfR/by/5iX/t51QeIlPU2OPQea+8lsm3xX5bhcc7a4X0L0kye/dU//JCdq6oiju6B3Yuh23WwapqtRuv/hwrfiiri6B7YPh+GPIrBWUN5yOOwfzXMfBSadIb4gTWcyfLTNghVOR0vgaaJ3jt/41bQJNH+il42BVZMtV9uG76BzT/atH+fBWs+gcGP4PeHhfz5jrG8cF1fPvYfQdOUBdzx4ju8+/MOMk4VWYMq65itvupyRUHvKxFI/J1d1c7TNgxPLZsCvgEw9K+2i7Cn1Q69boTcLFg1veLXXvelfR78MDTrZgOjqjprPgEM84PPpe/z/2Pd3nS7nskVE+zMx9NvhCNuqhKzjsGuxe4nvqwFxHipz66ITAIuBVKMMV2ctAjgIyAe2AFcY4w5LCICvA5cDJwEbjbGLC/rGklJSWbp0qVeyb+qRea/Av97uuTtsUkwYnyxQJWXcZTcV7qwXBK5Nv1eIkICuHlAPDf0a0XjkADbMPz5HXDrD9CiT8GBe1fAhHPgsvHQ+6aquYfsDHi5g23AvGpS+Y+fcK6t377r54rVZ79zvl3/484FsHA8/PBXuHd5+VcTrC9OpMHmWXZRraSx0LJf6fv/ZyC5vkH0T32MlGNZ9G7VmI/v6I+Pj0DqJnh7KES2hiGPwf41sH+VnZDy0DZ7fINIeGCNbQerBiKyzBiTVNZ+3qximgK8AbznkvYo8D9jzDgRedR5/2dgOHYd6nbYsvV/KFTGVvXaoD9Cr5vsF2ROpu2KmpNlnwFie4OPb7HDfILD8RlwF33nvsBX1/yNV1f58coPm/jXT5vp1bIxL2a+S/OGLfCLSSpclG7eHdM4gZO/fcK3Ziir9xylZUQDRvdtSYOACv6XWfelbevoPbZix/e6Eb5+APYsL/9CSkd2Q/ISGPakfd/lSvjhSdub6ZxHKpafusYY+yt+47e2VJm8xFbtIbZq7g+LS54af/8aOLCGmS0eIvV4FmMHxjN54Q4+WZbMNWe1sL39rnwbpl5nH2DbKpp2ge6jISAEZj0GKz6odW0V3lxydJ6IxBdJHoldpxrgXWAONkCMBN4ztjizWEQaiUhzY8yZ35FYVZ4IhERW7Ni+d8Kif9N12ztMunkiG/an8/lve1i9cQuxhxfzVu5lTHr+fwxqG8VZ8Y1JPpLByt1HOPdQD2499CX/2LKADP/GZGTn8uacrdw+uDU39GtFSGA5/+ssnWzbHCqyQBPYL/VZj9sJEcsbIPKrlzpfbp/DY23j+KrptsqpunrY7FwEC16FK/7POz3EKmrPcvjs95C2xb5v1g0GP2Knnc86Bu9eBvNftt2g3Vn1EUb8+NuWdtzQrxVPXtqZNXuO8o/v1nN+56a2tNphONwxz5YkmyYWnu3YGBusF71hB5u6+bFTU6q7DaJp/pe+89zESY8FXCvokp00pSqnQQScdSus/QzSttKxWRiPDe/EhwP24yd5dDr/Foa0j+bnrWn89cu1TF5g2ypyOo7ET/KYeeER1j59IZ/eNYAuseGM+24DZ784m//M2cqJrJyyrw+2cXr3Yn4KuZjBL83hwlfn8fa8bRw8Xo4+8kFhtofVmk9tH/vyWPs5NO9euDqp61WQttlWdVSHvFzb5XPzLFj4evVc0xMZh2H6TXaN9ktehj+uhTvnw7mPQUxPu6hWt+tgwWu2qqiovFzM6k/41a8XhETz0AUdEBH+fnkX0jNzeHGWy2zHzbvbqqqiU+GLwMD74fCOWjcXWG3pxeTuJ4zbxhERuR24HaBly5bezJOqK/rfY8c2LHgFRv7bpq3+GJp2Ydg5QxgGGGNIPpxBk7BAAv187a+6N9rRZOc34HMXvVs15r1b+rB812Fe/3EzL8zcwIR5WxnVpyXtmjYktlEDYhsH0zQ08HSPqb1HMpixci/NFj7HcOPHI1sSSWwbQnpmNs99u54XZm5gWKcmXJPUgnPaR58+7ujJbFYkH+G3XYf5bdcR1u1LJ8DXh4GB3Xnx1PtMm/I6W2J/R0TDAFpHNaRvQoT9lerOkV2wZykM+1vh9M4j4duH7efQvLuXPngXqz6ClHW2amXxW9DnDghr7v3rlsYYmHEvHNsLt3xfcsnsgmftYM1vHoSbvipc4tqxADm2l3dPXcVfr+lEeLA/AB2bhTF2QDwTF27nmqQ4erYso8TU8RL72Swcb0t6tWTcRHUHiAP5VUci0hxIcdKTgRYu+8UBe92dwBgzAZgAtpHam5lVdUTDJrYNY+lEOOfPtm559y9w3lOndxERWkS4NBDm92aa/084dgBCmwLQq2Vj3r2lD7/tOsz4/23mzTlbC13K10doFhZEWLA/G/anE2BOsSx4Nnubn8fMMb8jqmEgAJsOHOPjpbv5bPkeZq09QJPQQPokRLB+XzpbU0+czkKHpqGc0z6avDzDgePd2XW8BV32f8HTyb3JyC7oldWhaSh9W0fQNyGSvq0jTl/ndPVS4uWFP5MGEbbBfPWncN4ztsdNEcYYUo5lkZ6RTdsmDZGKfmllZ8JPz9lf5FdNgjf6wNwX4LLXKna+qvLrO7bb8QXPll5t1zDa/lv5+o+2Wq77tac3ZSz7kFyCOZFwHiO6xxQ67IHz2/PVqr385Ys1zLhnEL4+pXx+Pr72h8w3D9qpXypaFVnFvNaLCcBpg/japRfTS0CaSyN1hDHmERG5BLgH24upLzDeGNOnhNOepr2YlMeOJsPrPWyvpNDm8NPf4YHVdsxDSVLWw5v94OJ/lth4mJmdy54jGew5nEHy4Qz2HDnJnsMZHDx+irPiIxgdtJDoH++Hm76GhLOLHX8qJ4+fNqTw8dLdrN2bTpfYMHq2bEzPFo3oGhdOaJB/4QMW/du2Rdy1iJON27N+XzqLtx1i8bY0lu08zEmnK298ZAPio0J4NvV+An0Nv130BS0jGxDXuAE+Yq8raz4l/Ns7SR75CelN+3IgPZPNKcfYknKczSnH2ZJynGOZthqtWVgQ53duygWJTembEEmAXzlqp39+A75/Am6cAa3PsSWXXyfC3Usgqq3n56lK+1bBO8Ps+iWjPnIbIAvJy4OJ59sVFO/51bahZGeQ+Y/WfJ3Th173fkDr6IbFDvt61V7u+fA3nh6RyE0D4ku/RnYGvNrFjsW53rvdkD3txeTNbq5TsQ3SUcAB4G/AF8B0oCWwC7jaGHPI6eb6BnARtpvrWGNMmd/8GiBUucy4z3ZtDW0GYTFwy8yyj/l3X9sFcey3FbvmxAvh5EG4Z2nVVBucSLPdZfv8Hi76R6FN2bl5rNlzlF+2H2Ll7iNkpm5n8tFb+Uf2KP4v97Jipwomk6WBd/Fl7kAez7ntdHpUw0DaNgmhXZNQ2jZpSJC/D7M3pDJ3UyoZ2bmEBvkxtGMTzuvUlKZhQfj6gI8Ivj5y+jnQz4cGAX4E5x0nbEISEtMLbnDmuDqeAq/3wDXzEdQAAA/lSURBVLS7gMzLJ5KRnUtWTi6+IgT4+RDg50Ogn2/pv7hLYYwpvbSTdQz+7xzIPgl3LvS8A8S+Vbb7c++b4dJX2fC/d+k4/z4+TnyTq6++vsS83DBxCSuTj/C/h86hSWhQ6deY8wLMed72mmrSyX02jmbw2fI99GzRiAFtKzb/WY0HiOqgAUKVy6Ft8K/etorpkpfhrNvKPmbOCzDnH/Dg+vLXmeeXQC54FgbcW7E8u/PxzXYg30MbwS+w5P0Wvg4/PEn67UvZnhvNrkMn2XMkA4AAXx8C/X0YtOoxmqfMZ/ZlC4gIC6Vdk4Y0auC+PSMzO5cFmw/y/br9/G99CmknTpWZ1Yf9pnG33wxGZv+DHQFtCfDzISs7l9vzpnGPz2dcmvUsa0xrt8f6+ggBvj40CQuka2y4fcSF0yU2nDCnZGWMYfehDH7bfZiVu4+yYvdh1u5NJzjAl9hGwfbR2D7HNQ6mReNgOi56GN+1n9hSXXlHN898DBb/h1Njv2fZe4/TJm8bYY9uICiwhDYgYFvqcS56bT6XdGvOq9eWMZ/WyUPwaqKt3rz8zdPJmdm5/Lj+ANOXJrNgcyp5Bu45ty1/urBD+fLvqA3jIJSqXSJa/397dx4lVXnmcfz766abXRpkC4sgiCAuoHE3USSOS8K45IiOcZvojHGZqHOSeHTOyUxmckx0TGbMaNzHdTSRxMFtklFH0cQNMIiismgEBSTQBmjopummu5/543lby6Z6gy7a7vt8zqlTdW/fuvd9i6Ke+773vs8L+5/hdwJNPrX17cH/oz7/I59OddrV7bsFsXHk9JRv7FBxm3XQeX5n0pInW0669/ZsGHEQu42YwBRgyuiy7bcZeD489D+c0PMdGHtSi4ftVVLMcZOHcdzkYdQ3GG+trmDz1jrqzWhoMOobjHrz59q6BmzTGv7yhadZsvuJHDFuOlNr66ipa6BXSTE1uowtbzzHbQOf4P8Ovp2eJcWfvK+2vsGf6xqoqfMuvIUrN/Lkm5/e9T5ucF9GlPVm8ZpNnwSqXiVF7D9yAGcfNoba+npWb6hmxZ+reOm9j6lKXW+nF7/AT0pmcVfJWbzyfCl7DV3MXkP7MXJgbyq31rFhSy0btmxjQ1Ut66v89bb6BgwPRr0ajuf6oofZdP+FHFy3mj9NvqDF4AAwbkg/Ljp6HDfPeY/hA3oxZdQAJgzrz5hBfbZPAdNnkKd4ee0eqr98Dcu29OeRBat4bOFHVFRvY8SAXlx27F6c/sVRjNm9b4vH7QjRggjZUrPZbyccvn/b33P3SfDhy9B3qP8g7z/T+4lb6sbY2ZHTLWlogJ9N8ZG55z2Wf5v1y+E/psJf/BCOurz5fdVvg5/sDeOP7fhyPnEFvP6g99kP2nP7v79yiw8QO/dRP34r1lfVsmh1BYtWbWTR6gpWb6xm0vDdmDq6jKmjy5g4vH/e+crNjIrqbZS//yZ7zp7BR/325Yah1/FueTXvl1dRm2fCqdIeRQzqU0pZnxJ69igCCeH/5EdufZHvbfqRb3jJy21KNVNdW8/5d89j/gfrP5lwrrRHEeOH9GPiMG+1lVfWUL65hh4VH/JA1be4s/5rXFf3DUp7FHHCvsM54+BRHDl+8A53veWKFkQI+fTs377gAHDubL9/f9Gv/E6oubd6fp39Z8Lkk2HwROjR5Czy7Ud3buR0S4qK4KBzYc61HuzyJUv8ZHDcKS3vq7jE73Ba+AsfX9Fz+wutO+Tjd2HBA96Nly84gI9PefUWT6Myblqr12gG9S3lmL2HcMzeQ9pVFEmUffAUZb+5Enr2ZY+/eZCbUibbuvoGVm6oZs3GanbrXcLAvqUM7FNC75Li5q9j2JHwy4V+LaWNech6lxYz6+Ij2FJbx3vrKlm2tpJlazezbO1m5i1fz+aaOob078mQfj0ZNGoCi8un881Ncxh58vc5er/xDOhT0vpBCiBaECG0R/VG79p5c5anzcagqIePkh4yEYZM8scrN3uA6KiL001VrIYb94OJX/WLpqMO/uzo5NuP8e6wv32u9X198DLccxKcdsdnbuHcKQ+fC398Di5f6LeJNmfhQ/DoJTDzXu/O62hbK+C3V8MbD/l4j9PugKGTdn6/9XWAeYAthNUL4M5jW28B7qBoQYRQCL3LvI/4wHN8ToXlv/OL0eVLPSfP4idSDh/84nShBjwNGOmDzebd7gELfD6JUYd6oFqz0I/fFqMP95n0Zl8ET1zurazSft6a6LkblPTxYKOi9FB6Lvag1G+YjzXpN8wfW/7sI4KnXdNycAA44Ex4+SZ49ocwaUbH/uC+/wI8eqlP3nP0VZ53qqP231Fzrzdn5EEw9svewho8wdOFl+2xywfQRQsihI60rdpz+mxc6dcfmnY9dbSazX62uWoerJwPq+b7PN4qgiveaHmcR66V8/zOqJpN3tVUW+n7rqmEbVUe9KzBRx83vm6o87tuqvOkRe87BC5/ffu0Evks/a0nsdv7JM93NHy/dn0E26nd4t1Wc2/zlt1pd7Q/f9XnwYoX4YGve6p38GA9dDIMm+xdW2OOavZW2NbEba4hZFHjlKbbqnZNCg2AulqoKofKtd4vX/knP/aIA9v2fjNPhvfSzzxATZrhI96/cEDb3rvxQ1j7Nqx7259XzvOZ+A672FOM7KIU2gVRs9lbqGvf8nnKG+u5tcKzHB/3gx3abQSIEELXUr3B8zS9eivUVKRAcZUHm62bfBzLJ4/lnmxw7TtQu/nTfZSN8TTah13kF767IzMPgCre4XxWESBCCF1T9UbvHnr1Fj9T7rO7X9fI1W+4Z6cdmrpbhu3r3S1t6dIKcZE6hNBF9S7zQYmHX+IJ9Tas8EGOg8bBoPF+22xp4QeJhQgQIYTPq14D4Mvf6exSZNqunjAohBBCFxEBIoQQQl4RIEIIIeQVASKEEEJeESBCCCHkFQEihBBCXhEgQggh5BUBIoQQQl5dOtWGpHLggx18+2Dg4w4sTleT5fpnue6Q7fpH3d0YM2t15qUuHSB2hqTX2pKLpLvKcv2zXHfIdv2j7u2re3QxhRBCyCsCRAghhLyyHCDu6OwCdLIs1z/LdYds1z/q3g6ZvQYRQgihZVluQYQQQmhBBIgQQgh5ZTJASDpR0lJJ70m6urPLU2iS7pa0TtJbOesGSXpG0rvpeWBnlrFQJI2WNEfSYklvS7oire/29ZfUS9I8SW+kuv9zWr+npLmp7g9LKu3sshaKpGJJr0t6Mi1nqe4rJC2StFDSa2ldu773mQsQkoqBnwMnAZOBsyRN7txSFdy9wIlN1l0NPGtmE4Bn03J3VAd8x8z2AQ4HLkv/3lmofw0w3cymAFOBEyUdDlwP/Huq+wbgwk4sY6FdASzOWc5S3QGONbOpOeMf2vW9z1yAAA4F3jOz982sFvglcEonl6mgzOx3wPomq08B7kuv7wNO3aWF2kXMbI2ZLUivN+M/FiPJQP3NVabFkvQwYDrw67S+W9YdQNIo4GvAXWlZZKTuLWjX9z6LAWIksDJneVValzXDzGwN+I8oMLSTy1NwksYCBwJzyUj9UxfLQmAd8AzwR2CjmdWlTbrz9/9G4CqgIS3vTnbqDn4y8LSkP0i6KK1r1/e+R4EL+HmkPOviXt9uTlI/4BHgSjPb5CeT3Z+Z1QNTJZUBs4F98m22a0tVeJJmAOvM7A+SpjWuzrNpt6t7jqPM7CNJQ4FnJC1p7w6y2IJYBYzOWR4FfNRJZelMayV9ASA9r+vk8hSMpBI8ODxoZv+dVmem/gBmthF4Hr8OUyap8eSwu37/jwJOlrQC70aejrcoslB3AMzso/S8Dj85OJR2fu+zGCDmAxPS3QylwF8Bj3dymTrD48D56fX5wGOdWJaCSf3O/wksNrN/y/lTt6+/pCGp5YCk3sBx+DWYOcDpabNuWXczu8bMRpnZWPz/+HNmdjYZqDuApL6S+je+Bo4H3qKd3/tMjqSW9FX8bKIYuNvMru3kIhWUpF8A0/B0v2uBfwIeBWYBewAfAjPNrOmF7C5P0peA3wOL+LQv+h/w6xDduv6SDsAvRBbjJ4OzzOxfJI3Dz6oHAa8D55hZTeeVtLBSF9N3zWxGVuqe6jk7LfYAHjKzayXtTju+95kMECGEEFqXxS6mEEIIbRABIoQQQl4RIEIIIeQVASKEEEJeESBCCCHkFQEidAmSTNJPc5a/K+kHHbTveyWd3vqWO32cmSmr7JxCH6vJcf9a0s278pihe4gAEbqKGuDrkgZ3dkFypezAbXUhcKmZHVuo8oTQkSJAhK6iDp9T9++b/qFpC0BSZXqeJukFSbMkLZN0naSz0xwJiySNz9nNcZJ+n7abkd5fLOkGSfMlvSnpWzn7nSPpIXwAXtPynJX2/5ak69O6fwS+BNwm6YY87/leznEa520YK2mJpPvS+l9L6pP+9pU0z8Ei+XwfPdP6QyS9LJ8DYl7jaFpghKT/TfMA/GtO/e5N5VwkabvPNmRbFpP1ha7r58CbjT9wbTQFT1C3HngfuMvMDpVPHPRt4Mq03VjgGGA8MEfSXsB5QIWZHZJ+gF+S9HTa/lBgPzNbnnswSSPwOQe+iM838LSkU9MI5un4iN7XmrzneGBC2qeAxyUdjY90nQhcaGYvSbobuDR1F90LfMXMlkm6H7hE0i3Aw8CZZjZf0m5AdTrMVDyTbQ2wVNJNeCbPkWa2XypHWTs+15AB0YIIXYaZbQLuBy5vx9vmpzkhavBU140/8IvwoNBolpk1mNm7eCCZhOevOU+eLnsuni56Qtp+XtPgkBwCPG9m5Smt9IPA0a2U8fj0eB1YkI7deJyVZvZSev1feCtkIrDczJal9felY0wE1pjZfPDPKye19bNmVmFmW4F3gDGpnuMk3STpRGBTK+UMGRMtiNDV3Ij/iN6Ts66OdLKTkvPlTiOZm2enIWe5gc9+/5vmnDH8bP7bZvZU7h9Sbp+qZsq3I3nEBfzYzG5vcpyxLZSruf00lzsn93OoB3qY2QZJU4ATgMuAM4AL2lXy0K1FCyJ0KSmx2Cw+O1XkCrxLB3zGrJId2PVMSUXpusQ4YCnwFN51UwIgae+UGbMlc4FjJA1OF7DPAl5o5T1PARfI56xA0kh5Dn+APSQdkV6fBbwILAHGpm4wgHPTMZbg1xoOSfvpr09TW28nXfAvMrNHgO8DB7VSzpAx0YIIXdFPgb/LWb4TeEzSPHye3ebO7luyFP+RHQZcbGZbJd2Fd0MtSC2TclqZotHM1ki6Bk8rLeA3ZtZiSmUze1rSPsArfhgqgXPwM/3FwPmSbgfeBW5NZfsm8KsUAOYDt5lZraQzgZvk6b2r8RTfzRkJ3COp8UTxmpbKGbInsrmG8DmVupiebLyIHMKuFl1MIYQQ8ooWRAghhLyiBRFCCCGvCBAhhBDyigARQgghrwgQIYQQ8ooAEUIIIa//BwcEr3p82VsrAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f70a05367b8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import matplotlib\n",
    "\n",
    "\n",
    "def plot_loss(file_name):\n",
    "    train_loss = []   # This is actually psnr\n",
    "    val_loss = []     # This is actually loss\n",
    "    counter = 0\n",
    "    with open(file_name) as txtfile:\n",
    "         for row in txtfile:\n",
    "            curt_row = row.split(' ')\n",
    "            if counter >= 0:\n",
    "                if len(curt_row) >= 4 : \n",
    "                    if curt_row[3] == 'Train' :\n",
    "#                         print(curt_row[-1])\n",
    "                        train_loss.append(float(curt_row[-1][:-2]))\n",
    "                    if curt_row[3] == 'Eval':\n",
    "#                         print(curt_row[-1])\n",
    "                        val_loss.append(float(curt_row[-1][:-2]))\n",
    "            counter = counter + 1\n",
    "                    \n",
    "    print(len(train_loss))\n",
    "    train_loss = train_loss[:]\n",
    "    val_loss = val_loss[:]\n",
    "    plt.plot(val_loss)\n",
    "    plt.plot(train_loss)\n",
    "\n",
    "\n",
    "# resnet = './drrn_u9_model/train.log'\n",
    "# drrn_blu9_32 = './drrn_b1u9_model/train.log'\n",
    "# drrn_blu9_64 = './drrn_b1u9_filter_5_model/train.log'\n",
    "# drrn_blu9_128 = './drrn_b1u15_model/train.log'\n",
    "# drrn_b1u5 = './drrn_b1u5_model/train.log'\n",
    "drrn_blu9 = './drrn_b1u9_model/loss.txt'\n",
    "\n",
    "# plot_loss(resnet)\n",
    "# plot_loss(drrn_blu9_32)\n",
    "# plot_loss(drrn_blu9_64)\n",
    "# plot_loss(drrn_blu9_128)\n",
    "# plot_loss(drrn_b1u5)\n",
    "plot_loss(drrn_blu9)\n",
    "\n",
    "# plt.plot(val_loss)\n",
    "plt.legend(['Val Loss','Train Loss'])\n",
    "plt.xlabel('Number of epochs')\n",
    "plt.ylabel('Loss(MSE)')\n",
    "plt.title('B1U9 Avg Loss vs Num of Epochs')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f70a0872208>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import matplotlib\n",
    "\n",
    "\n",
    "def plot_loss(file_name):\n",
    "    train_loss = []   # This is actually psnr\n",
    "    val_loss = []     # This is actually loss\n",
    "    counter = 0\n",
    "    with open(file_name) as txtfile:\n",
    "         for row in txtfile:\n",
    "            curt_row = row.split(' ')\n",
    "            if len(curt_row) >= 4 : \n",
    "                if curt_row[3] == 'Train' :\n",
    "#                     print(curt_row[-1])\n",
    "                    train_loss.append(float(curt_row[-1][:-2]))\n",
    "                if curt_row[3] == 'Eval':\n",
    "#                     print(curt_row[-1])\n",
    "                    val_loss.append(float(curt_row[-1][:-2]))\n",
    "                    \n",
    "\n",
    "    train_loss = train_loss[1:60]\n",
    "    val_loss = val_loss[1:60]\n",
    "    plt.plot(val_loss)\n",
    "    plt.plot(train_loss)\n",
    "    \n",
    "\n",
    "# resnet = './drrn_u9_model/train.log'\n",
    "# drrn_blu9_32 = './drrn_b1u9_model/train.log'\n",
    "# drrn_blu9_64 = './drrn_b1u9_filter_5_model/train.log'\n",
    "# drrn_blu9_128 = './drrn_b1u15_model/train.log'\n",
    "drrn_blu9 = './drrn_b1u9_model/train.log'\n",
    "\n",
    "# plot_loss(resnet)\n",
    "# plot_loss(drrn_blu9_32)\n",
    "# plot_loss(drrn_blu9_64)\n",
    "# plot_loss(drrn_blu9_128)\n",
    "plot_loss(drrn_blu9)\n",
    "\n",
    "# plt.plot(val_loss)\n",
    "plt.legend(['Val Loss','Train Loss'])\n",
    "plt.xlabel('Number of epochs')\n",
    "plt.ylabel('Loss(MSE)')\n",
    "plt.title('ResNet Avg Loss vs Num of Epochs')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
